In This Topic
Programming / Document Conversion / Converting a multipage TIFF file to a multipage JBIG2 file

Converting a multipage TIFF file to a multipage JBIG2 file

In This Topic

This example shows you a quick way how to convert a multipage TIFF file to a multipage JBIG2 file.

Copy Code
'We assume that GdPicture has been correctly installed and unlocked.

Dim tifffilepath As String = "multipage.tif"

Dim jb2filepath As String = "multipage.jb2"

Using oGdPictureImaging As New GdPictureImaging()

    Dim TiffID As Integer = oGdPictureImaging.CreateGdPictureImageFromFile(tifffilepath)

    If oGdPictureImaging.GetStat() = GdPictureStatus.OK Then

        Dim Jbig2ID As Integer = 0

        Dim pageCount As Integer = oGdPictureImaging.TiffGetPageCount(TiffID)

        For i As Integer = 1 To pageCount

            If i = 1 Then

                Jbig2ID = oGdPictureImaging.CreateClonedGdPictureImage(TiffID)

                If (oGdPictureImaging.GetStat() <> GdPictureStatus.OK) OrElse

                    (oGdPictureImaging.JBIG2SaveAsMultiPageFile(Jbig2ID, jb2filepath) <> GdPictureStatus.OK) Then

                    MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error)

                Exit For

                End If

            Else

                If (oGdPictureImaging.TiffSelectPage(TiffID, i) <> GdPictureStatus.OK) OrElse

                    (oGdPictureImaging.JBIG2AddToMultiPageFile(Jbig2ID, TiffID) <> GdPictureStatus.OK) Then

                    MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error)

                    Exit For

                End If

            End If

        Next

        If oGdPictureImaging.GetStat() = GdPictureStatus.OK Then

            MessageBox.Show("Done!", "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Information)

        End If

        oGdPictureImaging.JBIG2CloseMultiPageFile(Jbig2ID)

        oGdPictureImaging.ReleaseGdPictureImage(Jbig2ID)

        oGdPictureImaging.ReleaseGdPictureImage(TiffID)

    Else

        MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error)

    End If

End Using
Copy Code
//We assume that GdPicture has been correctly installed and unlocked.

string tifffilepath = "multipage.tif";

string jb2filepath = "multipage.jb2";

using (GdPictureImaging oGdPictureImaging = new GdPictureImaging())

{

    int TiffID = oGdPictureImaging.CreateGdPictureImageFromFile(tifffilepath);

    if (oGdPictureImaging.GetStat() == GdPictureStatus.OK)

    {

        int Jbig2ID = 0;

        int pageCount = oGdPictureImaging.TiffGetPageCount(TiffID);

        for (int i = 1; i <= pageCount; i++)

        {

            if (i == 1)

            {

                Jbig2ID = oGdPictureImaging.CreateClonedGdPictureImage(TiffID);

                if ((oGdPictureImaging.GetStat() != GdPictureStatus.OK) ||

                    (oGdPictureImaging.JBIG2SaveAsMultiPageFile(Jbig2ID, jb2filepath) != GdPictureStatus.OK))

                {

                    MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error);

                    break;

                }

            }

            else

            {

                if ((oGdPictureImaging.TiffSelectPage(TiffID, i) != GdPictureStatus.OK) ||

                    (oGdPictureImaging.JBIG2AddToMultiPageFile(Jbig2ID, TiffID) != GdPictureStatus.OK))

                {

                    MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error);

                    break;

                }

            }

        }

        if (oGdPictureImaging.GetStat() == GdPictureStatus.OK)

            MessageBox.Show("Done!", "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Information);

        oGdPictureImaging.JBIG2CloseMultiPageFile(Jbig2ID);

        oGdPictureImaging.ReleaseGdPictureImage(Jbig2ID);

        oGdPictureImaging.ReleaseGdPictureImage(TiffID);

    }

    else

        MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "TIFF to JBIG2 Example", MessageBoxButtons.OK, MessageBoxIcon.Error);

}